js基础

1.写的代码越多,按理说基础应该是更加扎实,但是最近不知道怎么回事,总是犯不该犯的错误。所以还是有空就回顾回顾基础的知识,今天,就来看看js事件绑定的问题吧。
2.绑定事件的嵌套问题,是最容易出错的。
3.在一个点击事件内部嵌套点击事件,外点击事件执行几次,就会给内部的事件冤元素绑定几次点击事件,因此使用不当就会造成内部事件多次执行的问题。不说了,上代码。

$('div.div1').click(function() {
    alert('123');
    fon()
})

function fon() {
    $("div.div2").click(function() {
        alert("456");
    })
}

以上的写法会造成点击div1多少次,就会在第一次点击div2的时候弹出多少遍456,因此,为避免这种错误,正确的做法是在绑定点击事件之前先解绑事件,看代码。

$('div.div1').click(function() {
    alert('123');
    fon()
})

function fon() {
    $('div.div2').unbind("click")
    $("div.div2").click(function() {
        alert("456");
    })
}

当然,这种做法运行代码是没什么问题的,不过不建议这种写法,最好的最优的写法不应该是嵌套事件,就乖乖地编程不好吗???

$('div.div1').click(function() {
    alert('123');
})
$('div.div2').click(function() {
    alert('456');
})

miomiomio
147 声望5 粉丝

人生昧履,砥砺而行